<?php
ob_start();//打开浏览器缓存
//下面是读取xml数据
$parser = xml_parser_create(); //创建一个parser编辑器
xml_set_element_handler($parser, "startElement", "endElement");//设立标签触发时的相应函数 这里分别为startElement和endElenment
xml_set_character_data_handler($parser, "characterData");//设立数据读取时的相应函数
$xml_file="1.html";//指定所要读取的xml文件,可以是url
$filehandler = fopen($xml_file, "r");//打开文件
while ($data = fread($filehandler, 4096))
{
    xml_parse($parser, $data, feof($filehandler));
}//每次取出4096个字节进行处理
fclose($filehandler);
xml_parser_free($parser);//关闭和释放parser解析器
$name=false;
$position=false;
function startElement($parser_instance, $element_name, $attrs) //起始标签事件的函数
{
    global $name,$position;
    if($element_name=="NAME")
    {
        $name=true;
        $position=false;
        echo "名字:";
    }
    if($element_name=="POSITION")
    {$name=false;
        $position=true;
        echo "职位:";
    }
}
function characterData($parser_instance, $xml_data) //读取数据时的函数
{
    global $name,$position;
    if($position)
        echo $xml_data."<br />";
    if($name)
        echo $xml_data."<br />";
}
function endElement($parser_instance, $element_name) //结束标签事件的函数
{
    global $name,$position;
    $name=false;
    $position=false;
}
//xml数据读取完毕
$htmlname="core/1.html";//$id可以自己定义 这里代表用户传来的id
$htmlpath="http://127.0.0.1:8080/php/blog2/".$htmlname; //设置路径变量
$content = ob_get_contents();//取得php页面输出的全部内容
$fp = fopen($htmlpath, "w");
fwrite($fp, $content);
fclose($fp);
?>